Hybris Sales UX API icon

Hybris Sales UX API

(0 reviews)

Quote Management MOBILE

The Quote API is one of the Pre-Ordering Management API to retrieve the TAX information

Key Points for LCPR Mobile Customer

  1. category used to categorize the quote from a business perspective that can be useful for the CRM system. E.g. RES for CSG fixed or MOB for Vertex
  2. Under Note "InvoiceTextLanguage" defines Invoice Text Language. Valid values are Spanish or English. Must be populated.
  3. Under Note "CustomerType" defines Customer Type. Valid values are B2B or B2C. Must be populated with one of these values.
  4. Under Note "Host" defines system Identifier. Which system and environment is making the call to Vertex. Example: "ECOM"
  5. quoteItem.id is Product Code from Product Catalog Example: "PR_B2C_ULT_Premium_MB_Line".
  6. quoteItem.product.id is Vertex Class Code Example: "UNL_PREM".
  7. quoteItem.product.name is Product Catalog Name Example: "Unlimited Premium Mobile Line".
  8. externalId is Hybris quote Id or Cart Id
  9. requestedQuoteCompletionDate is Quote date or systemDate. Example: "2023-11-07T08:45:12.028-04:00"
  10. Under Note "BAN-CAN" need to provide BAN-CAN
  11. quoteitem.id ( ProductId) , quoteitem.product.id (Vertex class id) , quoteitem.product.name(product name) these request fields will accept below 40 characters length only from vertex.
  12. In single request we can add maximum of 40 products.

BaseUriParameter

NameTypeM/ODescription
businessIdstringMBusiness unit identifier. For LCPR it is ‘PR’

Headers

Security Headers client ID and client secret are mandatory to pass under Headers to access API.

NameTypeM/ODescription
client_idstringMClient Id value for Client Id Enforcement policy. Environment Specific Value. Eg: 6f0ed16a7b494d76b2d60e05bc3b3332
client_secretstringMClient secret value for Client Id Enforcement policy. Environment Specific Value, eg: e4CD4D43449846aA9D8Cb9c43fAd324a
X-Correlation-IDstringCMIdentifier that correlates HTTP request between a client and server. Any identification model (UUDI, checksum, etc.) can be used, as long as it is a unique value to differentiate a transaction. Conditional mandatory field which will be used in logging.
Example: f058ebd6-02f7-4d3f-942e-904344e8cde5

Request

{
    "category": "MOB",
    "externalId": "2902202403",
    "instantSyncQuote": true,
    "requestedQuoteCompletionDate": "2024-03-05T00:00:00.000-04:00",
    "quoteItem": [
        {
            "id": "PR_B2C_ULT_Extra_MB_Line",
            "quantity": 1,
            "action": "add",
            "product": {
                "id": "UNL_EXTRA",
                "name": "Unlimited Extra Mobile Line",
                "@type": "Product"
            },
            "quoteItemPrice": [
                {
                    "price": {
                        "dutyFreeAmount": {
                            "unit": "USD",
                            "value": 100.00
                        }
                    }
                }
            ],
            "@type": "Plan"
        },
        {
            "id": "PR_B2C_ULT_Extra_MB_Line",
            "quantity": 1,
            "action": "add",
            "product": {
                "id": "UNL_EXTRA",
                "name": "Unlimited Extra Mobile Line",
                "@type": "Product"
            },
            "quoteItemPrice": [
                {
                    "price": {
                        "dutyFreeAmount": {
                            "unit": "USD",
                            "value": 100.00
                        }
                    }
                }
            ],
            "@type": "Plan"
        },
        {
            "id": "PR_B2C_ULT_Extra_MB_Line",
            "quantity": 1,
            "action": "add",
            "product": {
                "id": "UNL_EXTRA",
                "name": "Unlimited Extra Mobile Line",
                "@type": "Product"
            },
            "quoteItemPrice": [
                {
                    "price": {
                        "dutyFreeAmount": {
                            "unit": "USD",
                            "value": 100.00
                        }
                    }
                }
            ],
            "@type": "Plan"
        },
        {
            "id": "LLA_iPhone_12_Pro_Max",
            "quantity": 1,
            "action": "add",
            "product": {
                "id": "Smartphones_TPP",
                "name": "iPhone 12 Pro Max",
                "@type": "Product"
            },
            "quoteItemPrice": [
                {
                    "price": {
                        "dutyFreeAmount": {
                            "unit": "USD",
                            "value": 1000.00
                        }
                    }
                }
            ],
            "@type": "Device"
        },
        {
            "id": "LLA_iPhone_12_Pro_Max",
            "quantity": 1,
            "action": "add",
            "product": {
                "id": "Smartphones_TPP",
                "name": "iPhone 12 Pro Max",
                "@type": "Product"
            },
            "quoteItemPrice": [
                {
                    "price": {
                        "dutyFreeAmount": {
                            "unit": "USD",
                            "value": 1000.00
                        }
                    }
                }
            ],
            "@type": "Device"
        },
        {
            "id": "LLA_iPhone_12_Pro_Max",
            "quantity": 1,
            "action": "add",
            "product": {
                "id": "Smartphones_TPP",
                "name": "iPhone 12 Pro Max",
                "@type": "Product"
            },
            "quoteItemPrice": [
                {
                    "price": {
                        "dutyFreeAmount": {
                            "unit": "USD",
                            "value": 1000.00
                        }
                    }
                }
            ],
            "@type": "Device"
        }
    ],
    "contactMedium": [
        {
            "mediumType": "address",
            "characteristic": {
                "city": "San Juan",
                "country": "Puerto Rico",
                "postCode": "00926",
                "stateOrProvince": "PR",
                "street1": "996 Calle San Roberto",
                "contactType": "billingAddress"
            }
        }
    ],
    "note": [
        {
            "text": "ECOM",
            "@type": "Host"
        },
        {
            "text": "B2C",
            "@type": "CustomerType"
        },
        {
            "text": "2402202403",
            "@type": "BAN-CAN"
        },
        {
            "text": "Spanish",
            "@type": "InvoiceTextLanguage"
        }
    ],
    "@type": "Quote"
}

Response

{
    "category": "MOB",
    "externalId": "2902202403",
    "instantSyncQuote": true,
    "requestedQuoteCompletionDate": "2024-03-05T00:00:00-04:00",
    "quoteItem": [
        {
            "id": "PR_B2C_ULT_Extra_MB_Line",
            "quantity": 1,
            "action": "add",
            "product": {
                "id": "UNL_EXTRA",
                "name": "Unlimited Extra Mobile Line",
                "@type": "Product"
            },
            "quoteItemPrice": [
                {
                    "price": {
                        "dutyFreeAmount": {
                            "unit": "USD",
                            "value": 100
                        },
                        "taxIncludedAmount": {
                            "unit": "USD",
                            "value": 100.9
                        }
                    },
                    "taxItem": [
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0.59
                            },
                            "taxCategory": "IVU - Estatal"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0.06
                            },
                            "taxCategory": "IVU - Municipal"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0.17
                            },
                            "taxCategory": "Cargo por el Servicio Universal Federal"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0.08
                            },
                            "taxCategory": "Servicio Universal de Puerto Rico"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0
                            },
                            "taxCategory": "Servicio Universal de Puerto Rico"
                        }
                    ]
                }
            ],
            "@type": "Plan"
        },
        {
            "id": "PR_B2C_ULT_Extra_MB_Line",
            "quantity": 1,
            "action": "add",
            "product": {
                "id": "UNL_EXTRA",
                "name": "Unlimited Extra Mobile Line",
                "@type": "Product"
            },
            "quoteItemPrice": [
                {
                    "price": {
                        "dutyFreeAmount": {
                            "unit": "USD",
                            "value": 100
                        },
                        "taxIncludedAmount": {
                            "unit": "USD",
                            "value": 100.9
                        }
                    },
                    "taxItem": [
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0.6
                            },
                            "taxCategory": "IVU - Estatal"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0.06
                            },
                            "taxCategory": "IVU - Municipal"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0.17
                            },
                            "taxCategory": "Cargo por el Servicio Universal Federal"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0.07
                            },
                            "taxCategory": "Servicio Universal de Puerto Rico"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0
                            },
                            "taxCategory": "Servicio Universal de Puerto Rico"
                        }
                    ]
                }
            ],
            "@type": "Plan"
        },
        {
            "id": "PR_B2C_ULT_Extra_MB_Line",
            "quantity": 1,
            "action": "add",
            "product": {
                "id": "UNL_EXTRA",
                "name": "Unlimited Extra Mobile Line",
                "@type": "Product"
            },
            "quoteItemPrice": [
                {
                    "price": {
                        "dutyFreeAmount": {
                            "unit": "USD",
                            "value": 100
                        },
                        "taxIncludedAmount": {
                            "unit": "USD",
                            "value": 100.89
                        }
                    },
                    "taxItem": [
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0.6
                            },
                            "taxCategory": "IVU - Estatal"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0.05
                            },
                            "taxCategory": "IVU - Municipal"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0.17
                            },
                            "taxCategory": "Cargo por el Servicio Universal Federal"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0.07
                            },
                            "taxCategory": "Servicio Universal de Puerto Rico"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 0
                            },
                            "taxCategory": "Servicio Universal de Puerto Rico"
                        }
                    ]
                }
            ],
            "@type": "Plan"
        },
        {
            "id": "LLA_iPhone_12_Pro_Max",
            "quantity": 1,
            "action": "add",
            "product": {
                "id": "Smartphones_TPP",
                "name": "iPhone 12 Pro Max",
                "@type": "Product"
            },
            "quoteItemPrice": [
                {
                    "price": {
                        "dutyFreeAmount": {
                            "unit": "USD",
                            "value": 1000
                        },
                        "taxIncludedAmount": {
                            "unit": "USD",
                            "value": 1115
                        }
                    },
                    "taxItem": [
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 105
                            },
                            "taxCategory": "IVU - Estatal"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 10
                            },
                            "taxCategory": "IVU - Municipal"
                        }
                    ]
                }
            ],
            "@type": "Device"
        },
        {
            "id": "LLA_iPhone_12_Pro_Max",
            "quantity": 1,
            "action": "add",
            "product": {
                "id": "Smartphones_TPP",
                "name": "iPhone 12 Pro Max",
                "@type": "Product"
            },
            "quoteItemPrice": [
                {
                    "price": {
                        "dutyFreeAmount": {
                            "unit": "USD",
                            "value": 1000
                        },
                        "taxIncludedAmount": {
                            "unit": "USD",
                            "value": 1115
                        }
                    },
                    "taxItem": [
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 105
                            },
                            "taxCategory": "IVU - Estatal"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 10
                            },
                            "taxCategory": "IVU - Municipal"
                        }
                    ]
                }
            ],
            "@type": "Device"
        },
        {
            "id": "LLA_iPhone_12_Pro_Max",
            "quantity": 1,
            "action": "add",
            "product": {
                "id": "Smartphones_TPP",
                "name": "iPhone 12 Pro Max",
                "@type": "Product"
            },
            "quoteItemPrice": [
                {
                    "price": {
                        "dutyFreeAmount": {
                            "unit": "USD",
                            "value": 1000
                        },
                        "taxIncludedAmount": {
                            "unit": "USD",
                            "value": 1115
                        }
                    },
                    "taxItem": [
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 105
                            },
                            "taxCategory": "IVU - Estatal"
                        },
                        {
                            "taxAmount": {
                                "unit": "USD",
                                "value": 10
                            },
                            "taxCategory": "IVU - Municipal"
                        }
                    ]
                }
            ],
            "@type": "Device"
        }
    ],
    "quoteTotalPrice": [
        {
            "extendedPrice": {
                "dutyFreeAmount": {
                    "unit": "USD",
                    "value": 3300
                },
                "taxIncludedAmount": {
                    "unit": "USD",
                    "value": 3647.69
                }
            },
            "taxItem": [
                {
                    "taxAmount": {
                        "unit": "USD",
                        "value": 347.69
                    },
                    "taxCategory": "TOTAL TAXES"
                }
            ]
        }
    ],
    "contactMedium": [
        {
            "mediumType": "address",
            "characteristic": {
                "city": "San Juan",
                "country": "Puerto Rico",
                "postCode": "00926",
                "stateOrProvince": "PR",
                "street1": "996 Calle San Roberto",
                "contactType": "billingAddress"
            }
        }
    ],
    "note": [
        {
            "text": "ECOM",
            "@type": "Host"
        },
        {
            "text": "B2C",
            "@type": "CustomerType"
        },
        {
            "text": "2402202403",
            "@type": "BAN-CAN"
        },
        {
            "text": "Spanish",
            "@type": "InvoiceTextLanguage"
        }
    ],
    "@type": "Quote"
}

Possible Error Responses:

  • When we miss quoteItem.id value
{
    "errors": [
        {
            "code": 400,
            "message": "ERROR:POSTQUOTE",
            "description": "size must be between 1 and 40 lineItems[0].lineItemId"
        }
    ]
}
  • When we miss category value
{
    "errors": [
        {
            "code": 501,
            "message": "LLA:NOT_IMPLEMENTED",
            "description": "Operation POST /quote for targetSystem : Cannot be blank  and channelId : Cannot be blank "
        }
    ]
}
  • When we miss contactMedium.characteristic.city value
{
    "errors": [
        {
            "code": 400,
            "message": "ERROR:POSTQUOTE",
            "description": "size must be between 1 and 60 customer.destination.city"
        }
    ]
}
  • When we miss contactMedium.characteristic.country value
{
    "errors": [
        {
            "code": 400,
            "message": "ERROR:POSTQUOTE",
            "description": "size must be between 1 and 60 customer.destination.country"
        }
    ]
}
  • When we miss contactMedium.characteristic.postalCode value
{
    "errors": [
        {
            "code": 400,
            "message": "ERROR:POSTQUOTE",
            "description": "size must be between 1 and 20 customer.destination.postalCode"
        }
    ]
}
  • When we miss contactMedium.characteristic.mainDivision value
{
    "errors": [
        {
            "code": 400,
            "message": "ERROR:POSTQUOTE",
            "description": "size must be between 1 and 60 customer.destination.mainDivision"
        }
    ]
}
  • When we miss contactMedium.characteristic.streetAddress1 value
{
    "errors": [
        {
            "code": 400,
            "message": "ERROR:POSTQUOTE",
            "description": "size must be between 1 and 100 customer.destination.streetAddress1"
        }
    ]
}
  • When we miss note.text value when '@type' = "BAN-CAN"
{
    "errors": [
        {
            "code": 400,
            "message": "ERROR:POSTQUOTE",
            "description": "size must be between 1 and 250 lineItems[0].flexibleFields.flexibleCodeFields[3].value"
        }
    ]
}
  • When we miss note.text value when '@type' = "CustomerType"
{
    "errors": [
        {
            "code": 400,
            "message": "ERROR:POSTQUOTE",
            "description": "size must be between 1 and 250 lineItems[1].flexibleFields.flexibleCodeFields[1].value"
        }
    ]
}
  • When we miss note.text value when '@type' = "Host"
{
    "errors": [
        {
            "code": 400,
            "message": "ERROR:POSTQUOTE",
            "description": "size must be between 1 and 250 lineItems[0].flexibleFields.flexibleCodeFields[0].value"
        }
    ]
}
  • When we miss note.text value when '@type' = "InvoiceTextLanguage"
{
    "errors": [
        {
            "code": 400,
            "message": "ERROR:POSTQUOTE",
            "description": "size must be between 1 and 250 lineItems[2].flexibleFields.flexibleCodeFields[4].value"
        }
    ]
}

Definitions

Each of the request parameters is detailed.

nametypedescriptionrequired
categorystringUsed to categorize the quote from a business perspective that can be useful for the CRM system. E.g. RES for CSG fixed or MOB for VertexM
externalIdstringHybris quote IdM
instantSyncQuotebooleanFixed value: trueM
requestedQuoteCompletionDateDate TimeQuote date or systemDateO
quoteItemarrayA list of quote items. An item of the quote - it is used to describe an operation on a product to be quoted.M
quoteItem.idstringProduct Code from Product CatalogM
quoteItem.quantityintegerAn integer. Quantity asked for this quote item.O
quoteItem.actionstringFixed Value: AddO
quoteItem.productobjectA product to be created defined by value or existing defined by reference. The polymorphic attributes @type,@schemaLocation & @referredType are related to the product entity and not the RelatedProductRefOrValue class itself.M
quoteItem.product.idstringVertex Class CodeM
quoteItem.product.namestringProduct Catalog NameO
quoteItem.product."@type"stringFixed Value: ProductO
quoteItem.quoteItemPricearrayA list of quote prices. Price for this quote item.M
quoteItem.quoteItemPrice.priceobjectA money. All taxes included amount (expressed in the given currency).M
quoteItem.quoteItemPrice.price.dutyFreeAmountobjectA money (Money). All taxes excluded amount (expressed in the given currency).O
quoteItem.quoteItemPrice.price.dutyFreeAmount.unitstringCurrency, "USD"O
quoteItem.quoteItemPrice.price.dutyFreeAmount.valueintegerProduct Item in the quoteM
quoteItem."@type"stringDepending upon the schema:
Plan
Device
AddonProduct
M
contactMediumarrayA list of contact mediums. Information contact related to the quote requester.M
contactMedium.mediumTypestringA string. Type of the contact medium, such as: email address, telephone number, postal address.O
contactMedium.characteristicobjectA medium characteristic (MediumCharacteristic). Any additional characteristic(s) of this contact medium.M
contactMedium.characteristic.citystringcityM
contactMedium.characteristic.countrystringCountry, "US"M
contactMedium.characteristic.postCodestringPostal CodeM
contactMedium.characteristic.stateOrProvincestringState or province.M
contactMedium.characteristic.street1stringStreet DescriptionM
contactMedium.characteristic.contactTypestringThe type of contact, for example: phone number such as mobile, fixed home, fixed office. postal address such as shipping installation….O
notearrayA list of notes. Free form text associated with the quote.M
note.textstringValue of the associated typeO
note."@type"stringMetadata required
Host
CustomerType
InvoiceTextLanguage
M
"@type"stringFixed value: "Quote"M

Response Definitions

Each of the response parameters is detailed.

nametypedescriptionrequired
categorystringUsed to categorize the quote from a business perspective that can be useful for the CRM system. E.g. RES for CSG fixed or MOB for VertexM
externalIdstringHybris quote IdM
instantSyncQuotebooleanFixed value: trueM
requestedQuoteCompletionDateDate TimeQuote date or systemDateO
contactMediumarrayA list of contact mediums. Information contact related to the quote requester.
Customer Address to be able to use as destination for the taxes calculation
M
contactMedium.mediumTypestringA string. Type of the contact medium, such as: email address, telephone number, postal address.O
contactMedium.characteristicobjectA medium characteristic (MediumCharacteristic). Any additional characteristic(s) of this contact medium.M
contactMedium.characteristic.citystringcityM
contactMedium.characteristic.countrystringCountry, "US"M
contactMedium.characteristic.street1stringStreet DescriptionM
contactMedium.characteristic.street2stringComplementary street description.M
contactMedium.characteristic.postCodestringPostal CodeM
contactMedium.characteristic.stateOrProvincestringState or province.M
contactMedium.characteristic.contactTypestringThe type of contact, for example: phone number such as mobile, fixed home, fixed office. postal address such as shipping installation….O
quoteItemarrayA list of quote items. An item of the quote - it is used to describe an operation on a product to be quoted.M
quoteItem.@typestringPolymorphic item field to describe the type of item in the cart."Plan", "Device", "Fee", "AddonProduct" as possible values for mobile.M
quoteItem.idstringProduct Code from Product Catalog
Example: "PR_B2C_ULT_Premium_MB_Line"
M
quoteItem.quantitystringQuantity of the same productM
quoteItem.actionstringFixed Value: AddO
quoteItem.productobjectA product to be created defined by value or existing defined by reference. The polymorphic attributes @type,@schemaLocation & @referredType are related to the product entity and not the RelatedProductRefOrValue class itself.M
quoteItem.product.idstringVertex Class Code
Example: "UNL_PREM"
M
quoteItem.product.namestringProduct Catalog Name
Example: "Unlimited Premium Mobile Line"
O
quoteItem.quoteItemPricearrayA list of quote prices. Price for this quote item.M
quoteItem.quoteItemPrice.priceobjectA money. All taxes included amount (expressed in the given currency).M
quoteItem.quoteItemPrice.price.dutyFreeAmountobjectA money (Money). All taxes excluded amount (expressed in the given currency).O
quoteItem.quoteItemPrice.price.dutyFreeAmount.unitstringCurrency, "USD"O
quoteItem.quoteItemPrice.price.dutyFreeAmount.valueintegerProduct Item in the quoteM
quoteItem.quoteItemPrice.price.taxIncludedAmountarrayA money (Money). All taxes included amount (expressed in the given currency).O
quoteItem.quoteItemPrice.price.taxIncludedAmount.unitstringA money (Money). All taxes included amount (expressed in the given currency).O
quoteItem.quoteItemPrice.price.taxIncludedAmount.valuefloatA float. A positive floating point number.O
quoteItem.quoteItemPrice.taxItem.taxAmountarrayAll taxes amount(expressed in the given currency).O
quoteItem.quoteItemPrice.taxItemArrayArray of Tax Items(tax split rate) including total tax which will be the first element.Tax Items will be applicable for Balance as of now(quoteTotalPrice.name)M
quoteItem.quoteItemPrice.taxItem.taxAmount.unitstringA money (Money). All taxes included amount (expressed in the given currency).O
quoteItem.quoteItemPrice.taxItem.taxAmount.valuefloatA float. A positive floating point number.O
quoteItem.quoteItemPrice.taxItem.taxAmount.taxCategorystringA string. Text of the tax items.O
quoteTotalPricearrayA list of quote prices (QuotePrice [*]). Quote total price.M
quoteTotalPrice.extendedPriceinteger
quoteTotalPrice.extendedPrice.dutyFreeAmountobject
quoteTotalPrice.extendedPrice.dutyFreeAmount.unitstring
quoteTotalPrice.extendedPrice.dutyFreeAmount.valuefloat
quoteTotalPrice.extendedPrice.taxIncludedAmountstring
quoteTotalPrice.extendedPrice.taxIncludedAmount.unitstringCurrency (ISO4217 norm uses 3 letters to define the currency)M
quoteTotalPrice.extendedPrice.taxIncludedAmount.valuefloatUsed to map PreviousBalance, Balance and ProjectedBalance amount from Obtain projected future statement responseM
quoteTotalPrice.taxItem.taxAmountobject
quoteTotalPrice.taxItem.taxAmount.unitstring
quoteTotalPrice.taxItem.taxAmount.valuefloatUsed to map TAXES/FEES from Obtain projected future statement response (Total Tax Amount)M
quoteTotalPrice.taxItem.taxCategorystring
notearrayA list of notes. Free form text associated with the quote.M
note.textstringValue of the associated typeO
note."@type"stringMetadata required
Host
CustomerType
InvoiceTextLanguage
M
"@type"stringFixed value: "Quote"O

Reviews